﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace BatallaNavalgo
{
    public abstract class MinaConRetardo : Disparo
    {
        public MinaConRetardo(int turno)
            : base(turno)
        {
        }

        public override void Impactar(Lancha lancha, FragmentoDeNave fragmento)
        {
            if (this.DebeImpactar())
                fragmento.RecibirImpacto();
        }


        public override void Impactar(Destructor destructor, FragmentoDeNave fragmento)
        {
            if (this.DebeImpactar())
                fragmento.RecibirImpacto();
        }

        public override void Impactar(Buque buque, FragmentoDeNave fragmento)
        {
            if (this.DebeImpactar())
            {
                FragmentoDeNave[] fragmentos = buque.Fragmentos;
                for (int i = 0; i < 4; i++)
                    fragmentos[i].RecibirImpacto();
            }
        }

        public override void Impactar(PortaAviones portaAviones, FragmentoDeNave fragmento)
        {
            if (this.DebeImpactar())
                fragmento.RecibirImpacto();
        }

        public override void Impactar(RompeHielos rompeHielos, FragmentoDeNave fragmento)
        {

            if (this.DebeImpactar())
                fragmento.RecibirImpacto();
        }
    }
}

